﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using KWIS9000CLIENT;

namespace QuizGUI
{
    /// <summary>
    /// GUI voor deelnemers aan een zaalkwis.
    /// </summary>
    /// <author>Werner Goossens</author>
    public partial class DeelnemerZaalGUI : Form
    {
        private KwisClient client;
        private string spelerNaam;

        public DeelnemerZaalGUI()
        {
            InitializeComponent();
        }

        /// <summary>
        /// Load event, vraagt om een naam en maakt verbinding met de server.
        /// </summary>
        /// <author>Werner Goossense en sebastiaan houben</author>
        private void DeelnemerZaalGUI_Load(object sender, EventArgs e)
        {
            InputDialog inDialog = new InputDialog("Geef u naam op", "Naam", "");
            spelerNaam = inDialog.ResultText;

            client = new KwisClient();
            client.connect(spelerNaam);
            client.speler.clientConnection.client.DataReceived += new NetComm.Client.DataReceivedEventHandler(client_DataReceived);
             
        }

        /// <summary>
        /// Event voor het drukken van de 'antwoord'-knop,
        /// stuurt het antwoord uit de tekstbox naar de server.
        /// De server stuurt het door naar de jury-client
        /// </summary>
        /// <author>Werner Goossens</author>
        private void bnVerzend_Click(object sender, EventArgs e)
        {
            client.sendData(tbAntwoord.Text);
        }

        /// <summary>
        /// update de GUI wanneer deze gewijzigd wordt
        /// </summary>
        /// <author>Werner Goossens</author>
        private void updateGui()
        {

        }
        /// <summary>
        /// Event voor het drukken van de 'druk'-knop,
        /// stuurt een signaal naar de server.
        /// </summary>
        /// <author>sebastiaan houben </author>
        // eventhandler 
        void client_DataReceived(byte[] Data, string id)
        {
            Console.Out.WriteLine(id + ": " + KWIS9000SERVER.classes.Connection.ConvertBytesToString(Data) + Environment.NewLine); //Updates the log textbox when new user joined
        }


    }
}
